import {Color} from "./core/color";
import {vec3,mat4} from "gl-matrix";
import {Camera} from "./core/camera";
import {Scene} from "./core/scene";
import {AmbientLight} from "./lights/ambientLight";
import {DirectionalLight} from "./lights/directionalLight";
import {resLoader} from './extras/resLoader';
import {ObjParser} from './extras/objParser';
import {Renderer2} from "./core/renderer2";
import {GameItem} from "./comps/gameItem";
import {BasicMaterial} from "./comps/basicMaterial";
import {LambertMaterial} from "./comps/lambertMaterial";
import {Md5Parser} from "./extras/md5Parser";
import {cube} from "./primitives/cube2";
import {sphere} from "./primitives/sphere2";
import {plane} from "./primitives/plane2";
import {VertexCache} from "./core/vertexCache"

let engine = {
    Color: Color,
    vec3,mat4,Camera,Scene,
    AmbientLight,
    DirectionalLight,
    resLoader,
    ObjParser,
    Renderer2,
    GameItem,
    BasicMaterial,
    LambertMaterial,
    Md5Parser,


    // primitives
    cube,sphere,plane,

    VertexCache,

};

// @ts-ignore
globalThis.engine = engine;

